"""
__author__="yanwei"
__describe__="营销计划列表，把计划列表页面封装成一个类型，一个元素一个方法，给测试用例进行调用"
"""

from selenium import webdriver
from selenium.webdriver.common.by import By
from Pages.BasePage import Base_Page
from selenium.webdriver.common.keys import Keys

class MarketPlanListPage:

    def plan_list(self,driver):
        """
        定位【营销计划列表】页面
        :param driver:调用浏览器驱动
        :return:点击营销计划列表按钮，进入营销计划列表
        """
        plan_list = driver.find_element(By.LINK_TEXT,'营销计划列表')
        return plan_list.click()

    def plan_list_create_plan(self,driver):
        """
        定位【新建营销计划】按钮
        :param driver:调用浏览器驱动
        :return:点击新建营销计划按钮，进入新建页面
        """
        plan_list_create_plan = driver.find_element(By.CSS_SELECTOR,'span[data-zv="9.12.13"]')
        return plan_list_create_plan.click()

    def plan_list_query(self,drive,keyword):
        """
        定位计划列表【查询框】
        :param drive: 调用浏览器驱动
        :param keyword: 查询关键字
        :return: 根据关键字进行查询
        """
        plan_list_query = drive.find_element(By.CSS_SELECTOR,'input[placeholder="请输入营销计划名称、分销商名称查询"]')
        plan_list_query.send_keys(keyword)
        return plan_list_query.send_keys(Keys.RETURN)

    def plan_list_key_batch_list(self,driver,plan_name):
        """
        定位【计划名称】
        :param driver: 调用浏览器驱动
        :param plan_name: 计划名称
        :return: 点击计划名称，进入该计划的key批次列表
        """
        plan_list_key_batch_list = driver.find_element(By.XPATH,r"//span[text()='%s']"%plan_name)
        return plan_list_key_batch_list.click()




